home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Magic Disk 64
/
Magic_Disk_64_95-06_1995_-_de_Side_A.d64
/
sprite-source #1
< prev
next >
Wrap
Text File
|
2023-02-26
|
4KB
|
243 lines
;---------------------------------------
;
; - S P R I T E S -
;
; Source-File #1:
;
; 'Beschl.Joystick-Steuerung'
;
; by Hannes Sommer
;
; (c) 1993 CP-Verlag Gmbh
;
;---------------------------------------
v = 53248
*= $0840
.byte 0,255,0,3,255,192
.byte 15,255,240,31,255,248
.byte 63,255,252,63,255,252
.byte 127,189,254,127,189,254
.byte 255,189,255,255,255,255
.byte 255,255,255,247,255,239
.byte 251,255,223,124,126,62
.byte 127,129,254,63,255,252
.byte 63,255,252,31,255,248
.byte 15,255,240,3,255,192
.byte 0,255,0,0
lda #1 ;Initialisierung!
sta v+21
lda #0
sta v+16
lda #160
sta v
lda #136
sta v+1
lda #33
sta 2040
lda #7
sta v+39
sei
lda #<irq
sta $0314
lda #>irq
sta $0315
lda #129
sta $d01a
lda #27
sta $d011
lda #250
sta $d012
cli
ldx #0
i1 lda text,x
beq i2
jsr $ffd2
inx
bne i1
i2
end rts
text .byte 13,18
.text "joystick-abfrage im "
.text "irq aktiviert."
.byte 146,13,13,0
;---------------------------------------
; I R Q
;---------------------------------------
irq lda $d019
sta $d019
bmi t1
lda $dc0d
cli
jmp $ea31
t1
lda $dc00 ;Joystick!
sta joyst
and #1 ;up ?
bne t5
lda ypoint
cmp #1
beq t10
dec ypoint
jmp t10
t5 lda joyst
and #2 ;down ?
bne t8
lda ypoint
cmp #31
beq t10
inc ypoint
bne t10
t8 lda #0 ;Y-Bremse...
inc t8+1
and #1
bne t10
lda ypoint
cmp #16
beq t10
bcc t9
dec ypoint
bne t10
t9 inc ypoint
t10
lda joyst
and #4 ;left ?
bne t15
lda xpoint
cmp #1
beq t20
dec xpoint
jmp t20
t15 lda joyst
and #8 ;right ?
bne t18
lda xpoint
cmp #31
beq t20
inc xpoint
bne t20
t18 lda #0 ;X-Bremse...
inc t18+1
and #1
bne t20
lda xpoint
cmp #16
beq t20
bcc t19
dec xpoint
bne t20
t19 inc xpoint
t20
lda ypoint ;Y-moving !
clc
adc #1
lsr a
lsr a
tax
lda v+1
clc
adc speedtab,x
sta v+1
cmp #50
bcs t21
lda #50
sta v+1
lda ypoint
eor #31
clc
adc #2
sta ypoint
jmp t25
t21 cmp #230
bcc t25
lda #230
sta v+1
lda ypoint
and #254
eor #31
sta ypoint
t25
lda xpoint ;X-moving !
clc
adc #1
lsr a
lsr a
tax
cpx #4
bcs t35
lda v
clc
adc speedtab,x
sta v
bcs t31
lda #0
sta v+16
t31
lda v+16
bne t40
lda v
cmp #24
bcs t40
lda #24
sta v
lda xpoint
eor #31
clc
adc #2
sta xpoint
jmp t40
t35 lda v
clc
adc speedtab,x
sta v
bcc t36
lda #1
sta v+16
t36 lda v+16
beq t40
lda v
cmp #63
bcc t40
lda #64
sta v
lda xpoint
and #254
eor #31
sta xpoint
t40
jmp $ea81
joyst .byte 0
xpoint .byte 16
ypoint .byte 16
speedtab .byte 252,253,254,255,0
.byte 1,2,3,4